Magnetic resonance measurement apparatus with improved instruction sequence transfer

ABSTRACT

Procedure instruction sequences (P1˜PN) in an instruction sequence (for example, an instruction sequence for an NMR spectrometer) are generated in a precedential manner, and transferred to a procedure storage area on a transmission and reception unit in a precedential manner. After the precedential transfer, a remaining portion of the instruction sequence (streaming instruction sequence (SM1, . . . )) is sequentially generated in predetermined units from the beginning, and sequentially transferred to a FIFO area on the transmission and reception unit. A sequencer refers to the streaming instruction sequence, executes the instruction, and refers to a procedure instruction sequence on the procedure storage area.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims priority to Japanese Patent Application No.2014-150826 filed on Jul. 24, 2014, which is incorporated herein byreference in its entirety.

BACKGROUND OF THE INVENTION

Field of the Invention

The present invention relates to a magnetic resonance measurementapparatus, and in particular to a transfer technique of an instructionsequence for executing a pulse sequence.

Description of Related Art

As magnetic resonance measurement apparatuses, nuclear magneticresonance (NMR) measurement apparatuses and electron spin resonance(ESR) measurement apparatuses are known. In addition, as apparatusesclassified as NMR measurement apparatuses, magnetic resonance imaging(MRI) apparatuses are also known. In the following, NMR measurementapparatuses will be described.

NMR refers to a phenomenon where an atomic nucleus under a staticmagnetic field interacts with an electromagnetic wave having a frequencyintrinsic to the atomic nucleus. An apparatus that executes measurementof a sample at an atomic level taking advantage of this phenomenon is anNMR measurement apparatus. Currently, NMR measurement apparatuses areused in analyses of organic compounds (for example, medicines andagricultural chemicals), polymer materials (for example, vinyl andpolyethylene), biological substances (for example, nucleic acids andproteins), and the like. With the use of an NMR measurement apparatus,for example, a molecular structure of the sample can be revealed.

An NMR measurement apparatus generally includes a control computer, aradio frequency (RF) signal transmitter, an NMR signal detector (probe),a static magnetic field generator (superconductive magnet), an NMRsignal receiver, and the like. In some cases, a part of these structuresis called an NMR measurement apparatus. For example, a part of aspectrometer including the control computer, the RF signal transmitter,and the NMR signal receiver may be called an NMR measurement apparatus.In a typical NMR measurement, a high-frequency signal for NMRmeasurement (RF transmission signal) is generated in the transmitter,and the transmission signal is supplied to a transmission and receptioncoil in the probe. A resonance absorption phenomenon is caused in anobservation nucleus in the sample due to an electromagnetic wave causedby the transmission signal. An NMR signal induced in the transmissionand reception coil (RF reception signal) is then transmitted to thereceiver, and a spectrum of the received signal is analyzed.

In the NMR measurement apparatus, a pulse program is compiled by acompiler and a sequence of instructions (instruction sequence) isgenerated. The pulse program is a description of a pulse sequence forrealizing a desired NMR measurement. The sequence of instructions istransferred from the compiler to a sequencer unit. The sequencer unitcontrols operations of the transmitter, the receiver, or the like of theNMR measurement apparatus according to the transferred instructionsequence. In this manner, the NMR measurement is realized.

As the NMR measurement becomes more complex, the quantity of instructionsequences given to the sequencer unit becomes large, and the transfertime of the instruction sequence is also increased. In addition, whenthe instruction sequence is to be transferred from the compiler to thesequencer unit using a general bus, there is a restriction on thetransfer rate. Further, there is a restriction on storage areas of thetransfer destination. Because of the restriction on the transfer range,if the pulse sequence operation is to be started after the entirety ofthe instruction sequence is generated and transferred to the sequencerunit, there is a problem in that the startup of the sequencer unit, andconsequently, the start of the measurement, is delayed. In addition, inthis configuration, it is necessary to secure a storage area of a largecapacity at the transfer destination. In order to handle this, aconfiguration may be considered in which the measurement is startedwhile the generation and the transfer of the instruction sequence areexecuted in parallel to each other. However, if there is a sequence of ahigh density portion in the instruction sequence (for example, aninstruction portion for quickly changing many parameters in a shorttime), the generation and transfer of the instruction sequence would bedelayed at that portion, and, as a result, a case may be caused in whichthe instruction sequence to be referred to by the sequencer unit isexhausted. Such a problem also arises in other magnetic resonancemeasurement apparatuses.

In an NMR apparatus disclosed in JP 2007-335958 A, a pulse sequence isdivided into a plurality of kinds according to a characteristic of thepulse, and the data of unit pulse of each kind is stored in acorresponding segment memory. However, JP 2007-335958 A does notdisclose a structure for handling the delay of the start of themeasurement and exhaustion of the instruction sequence.

An advantage of the present invention is that, in a magnetic resonancemeasurement apparatus, delay of the start of the measurement is reducedor prevented, and exhaustion of the instruction sequence to be referredto by the sequencer unit is avoided.

SUMMARY OF THE INVENTION

According to one aspect of the present invention, there is provided amagnetic resonance measurement apparatus comprising: a precedentialprocessor unit that identifies a portion for precedential processing ofinformation for executing magnetic resonance measurement, and thatexecutes a precedential process to transfer a sequence of procedureinstructions generated from the identified portion to a first storageunit as a procedure entity, and to generate streaming instructionsequence for transfer in which reference information for identifying theprocedure entity is embedded; a transfer unit that repeats sequentialtransfer of the streaming instruction sequence for transfer, after theprecedential transfer process, to a second storage unit in units oftransfer from a beginning; a re-construction unit that re-constructs aninstruction sequence for execution by referring to the instructionsequence from the beginning, sequentially transferred to the secondstorage unit, the reconstruction unit re-constructing the instructionsequence for execution by referring to the procedure entity on the firststorage unit based on the reference information; and a sequencer unitthat executes the instruction sequence for execution which isre-constructed.

More specifically, in the present invention, a precedential transfer ofthe procedure instruction sequence and a sequential transfer of thestreaming instruction sequence are used in combination. For example, aninstruction sequence portion which is “heavy” in rate-determining senseis the target of the precedential transfer, and the “light” instructionsequence portion is the target of the sequential transfer. In otherwords, the heavy instruction sequence portion is transferred first, andthe light instruction sequence portion is transferred in a fragmentedmanner at a later time. The heavy instruction sequence portion is, forexample, a portion where the instructions are highly dense, and thelight instruction sequence portion is a portion where the density of theinstructions is low. For example, an instruction sequence portion forquickly changing many parameters in a short period of time correspondsto the high density portion. In the high density portion, a consumptionrate of the instruction sequence at the sequencer unit is fastercompared to the case of the low density portion. Therefore, if theinstructions included in the high density portion are to be sequentiallytransferred, there is a possibility that the instruction sequence to bereferred to by the sequencer unit is exhausted. That is, there may becases where the consumption rate of the instruction sequence at thesequencer unit becomes faster than the transfer rate of the instructionsequence, and the transfer of the instruction sequence cannot catch upwith the consumption of the instruction sequence. In order to handlesuch cases, in the present invention, the instruction sequence of thehigh density portion is transferred preceding the other instructionsequences, as a procedure entity. Alternatively, a portion other thanthe high density portion may be set as the target of the precedentialtransfer. On the other hand, in a configuration where all of theinstruction sequence is transferred and then the measurement is started,the time required for the transfer would be increased, causing a problemthat the start of the measurement is delayed. In particular, in the NMRmeasurement of a long period of time, in many cases, the total amount ofthe instruction sequence for the low density portion is very large, andin such cases, the problem becomes more significant. In addition, whenthe amount of the instruction sequence is very large, a storage area ofa large capacity must be secured in the transfer destination, butsecuring an infinite amount of storage areas is impractical. Thus, inthe present invention, the instruction sequence corresponding to theremaining portion is not made into a procedure, and the sequentialtransfer is employed. With such a configuration, the measurement can bestarted without waiting for transfer of all instruction sequence. Inthis manner, by combining the precedential transfer and the sequentialtransfer of the instruction sequence, it becomes possible to avoidexhaustion of the instruction sequence to be referred to by thesequencer unit, and, at the same time, to quicken the start of themeasurement compared to a case where the measurement is started afterall of the instruction sequences are transferred. In addition, itbecomes unnecessary to secure a storage area of a large capacity in thetransfer destination.

According to another aspect of the present invention, preferably, thesequencer unit includes a plurality of sequencers, the instructionsequence for execution is generated for each individual sequencer, andthe same procedure entity included in a plurality of instructionsequences for execution for the plurality of sequencers is shared by theplurality of sequencers. According to such a configuration, even if aplurality of the same procedure entities exist, it is not necessary totransfer the plurality of procedure entities. When one of the pluralityof procedure entities is transferred, the procedure entity is shared bythe sequencers, and the instruction is executed in the sequencers. Withsuch a configuration, the amount of transfer and the time of transfer ofthe instruction sequence are reduced. In addition, the storage area atthe transfer destination can be reduced.

According to another aspect of the present invention, preferably, whenthe execution information includes portions corresponding to a pluralityof procedure entities having the same content, the precedentialprocessor unit transfers one of the plurality of procedure entities tothe first storage unit. In this configuration also, because it is notnecessary to transfer the plurality of the same procedure entities, theamount of transfer, the time of transfer, and the storage area at thetransfer destination can be reduced.

According to another aspect of the present invention, preferably, theprecedential processor unit has a function to identify a portion thatsatisfies a make-procedure condition in the execution information.According to another aspect of the present invention, preferably, theportion that satisfies the make-procedure condition is a portion forrealizing a specific pulse sequence. For example, an instructionsequence portion for irradiating a shaped pulse (for example, amountain-shaped pulse) involving a high-speed modulation other than arectangular shape is handled as the procedure entity. In many cases,such an instruction sequence corresponds to the high density portion.Thus, by setting these portions as the target of the precedentialprocess, it becomes possible to avoid exhaustion of the instructionsequence at the sequencer unit.

According to another aspect of the present invention, preferably, thereference information is an address on the first storage unit orinformation that can identify the address. When the referenceinformation is referred to, the storage location of the procedure entitycan be identified, and the procedure entity can be read from the storagelocation. In this manner, the instruction sequence for execution isre-constructed.

According to another aspect of the present invention, preferably, theunit transfer is streaming transfer, and is executed in a parallelmanner also after start of execution of the instruction sequence forexecution by the sequencer unit. According to such a configuration, thetransfer of the instruction sequence to be transferred in the streamingtransfer, the re-construction of the instruction sequence, and theexecution of the instruction sequence by the sequencer unit are executedin parallel to each other. According to another aspect of the presentinvention, preferably, the unit transfer is streaming transfer, andgeneration of the instruction sequence for transfer, transfer of theinstruction sequence for transfer, re-construction of the instructionsequence for execution, and execution of the instruction sequence forexecution are executed in parallel to each other. According to such aconfiguration, the generation and the transfer of the instructionsequence to be transferred in the streaming transfer, there-construction of the instruction sequence, and the execution of theinstruction sequence by the sequencer unit are executed in parallel toeach other.

According to various aspects of the present invention, in a magneticresonance measurement apparatus, the delay of start of measurement canbe reduced or prevented, and, at the same time, exhaustion of theinstruction sequence referred to by a sequencer unit can be avoided.

BRIEF DESCRIPTION OF THE DRAWINGS

Preferred embodiments of the present invention will be described indetail with reference to the following figures, wherein:

FIG. 1 is a block diagram showing an NMR measurement apparatus accordingto a preferred embodiment of the present invention;

FIG. 2 is a diagram schematically showing an example structure of amemory;

FIG. 3 is a diagram schematically showing an example pulse program;

FIG. 4A is a diagram schematically showing an example pulse sequence;

FIG. 4B is a diagram schematically showing an example pulse sequence;

FIG. 4C is a diagram schematically showing an example pulse sequence;

FIG. 5 is a diagram for explaining a streaming instruction sequence anda procedure instruction sequence;

FIG. 6 is a diagram for explaining a transfer condition of aninstruction sequence;

FIG. 7 is a diagram schematically showing an example instructionsequence for each sequencer;

FIG. 8 is a diagram for explaining an outline of a transfer process anda re-construction process of an instruction sequence;

FIG. 9 is a diagram for explaining a generation process and a transferprocess of an instruction sequence in a time sequential manner;

FIG. 10 is a diagram schematically showing a memory in which aninstruction sequence is stored; and

FIG. 11 is a diagram for explaining a re-construction process of aninstruction sequence.

DESCRIPTION OF THE INVENTION

A preferred embodiment of the present invention will now be describedwith reference to the drawings.

(NMR Measurement Apparatus)

FIG. 1 shows a preferred embodiment of an NMR measurement apparatusaccording to the present invention. The NMR measurement apparatus isused for analysis of organic compounds, polymer materials, biologicalsubstances, and other substances. A sample to be measured is a liquidsample, a solid sample, or the like. The present invention also can beapplied to other magnetic resonance measurement apparatuses.

In FIG. 1, a host computer 10 generates a pulse program. The pulseprogram is a program describing a pulse sequence for realizing a desiredmeasurement, and is generated by a user or automatically. In the pulseprogram, for example, a plurality of high frequency (RF) pulses havingdifferent frequencies, different phases, different intensities,different output timings, different periods, or the like are combined,and the reception timings and reception periods or the like arecombined. The pulse program is sent from the host computer 10 to aspectrometer control computer 12. The host computer 10 may be formed bya typical personal computer.

The spectrometer control computer 12 controls an operation of atransmission and reception unit 22 which will be described in detaillater, and analyzes reception data obtained from the transmission andreception unit 22. The spectrometer control computer 12 and thetransmission and reception unit 22 form a spectrometer. In the presentembodiment, the spectrometer control computer 12 is equipped with acompiler that converts the pulse program (corresponding to an example ofexecution information) into an instruction sequence. The compiler isshown in FIG. 1 as an instruction sequence generator 14. In the presentembodiment, the compiler generates an instruction sequence for transfer,and the instruction sequence for transfer is sent to the transmissionand reception unit 22. The transfer of the instruction sequence isexecuted by a transfer controller 16. In the transmission and receptionunit 22, a final instruction sequence (instruction sequence forexecution) is generated from the transferred instruction sequence.

When generating the instruction sequence for transfer from the pulseprogram, the instruction sequence generator 14 identifies a portion forprecedential (prior) transfer in the pulse program, and generates theinstruction sequence of this portion as a procedure instructionsequence. Alternatively, the instruction sequence generator 14 mayidentify the procedure instruction sequence to be transferred in theprecedential transfer after converting the pulse program into theinstruction sequence. In addition, the instruction sequence generator 14generates, for the pulse program, an instruction sequence sequentially,starting from the beginning, in units for transfer (hereinafter referredto as “streaming instruction sequence”). In this process, theinstruction generator 14 generates the streaming instruction sequence inwhich, in place of the portion of the target of the precedentialtransfer, reference information for identifying the procedureinstruction sequence is embedded. The procedure instruction sequence andthe streaming instruction sequence correspond to the instructionsequence for transfer. The transfer unit may be a unit which isdetermined in advance, or may be changed to an arbitrary unit. Forexample, the transfer unit may be changed according to the transferrate. The transfer controller 16 transfers the procedure instructionsequence to the transmission and reception unit 22 prior to thestreaming instruction sequence. After the precedential (prior) transferof the procedure instruction sequence is completed, the transfercontroller 16 sequentially transfers, starting from the beginning, thestreaming instruction sequence to the transmission and reception unit22. For the streaming instruction sequence, generation and transfer areexecuted in a parallel manner. In the following, the transfer of theprocedure instruction sequence is referred to as “precedential transfer”and the transfer of the streaming instruction sequence is referred to as“ST transfer (streaming transfer).” The procedure instruction sequence,the streaming instruction sequence, and the transfer process will bedescribed in detail later.

The spectrometer control computer 12 is connected to the transmissionand reception unit 22 via a communication bus 20. In the exampleconfiguration shown in the drawings, the spectrometer control computer12 is connected to the host computer 10 via a network. The spectrometercontrol computer 12 is formed, for example, by a dedicated orgeneral-purpose computer. In the present embodiment, the spectrometercontrol computer 12 is equipped with an FFT (fast Fourier transform)calculation function for analyzing the spectrum of the reception signal.This function is shown in FIG. 1 as a reception signal analyzing unit18. The spectrometer control computer 12 is equipped with, in additionto the spectrum analyzing function, a control function, and anadministrative function necessary for the NMR measurement.Alternatively, the host computer 10 and the spectrometer controlcomputer 12 may be integrated.

The transmission and reception unit 22 will now be described. Thetransmission and reception unit 22 generates a transmission signal whichis necessary for the NMR measurement, and processes a reception signalwhich represents a result of the NMR measurement. Alternatively, thetransmission and reception unit 22, or a part in which the transmissionand reception unit 22 and the spectrometer control computer 12 arecombined, may be called the NMR measurement apparatus.

A memory 26 stores the instruction sequence sent from the spectrometercontrol computer 12. A memory controller 24 executes control for storageof the instruction sequence. The memory controller 24 may be included inthe spectrometer control computer 12. A re-construction unit 32generates the final instruction sequence (corresponding to an example ofan instruction sequence for execution) from the instruction sequencestored in the memory 26. Alternatively, the final instruction sequencemay be constructed by another circuit. In the present embodiment, whilethe measurement is executed, the instruction sequence may be generatedin parallel with the execution of the measurement. In the memory 26, aplurality of FIFO areas or the like are provided for storing theinstruction sequence in units of sequencers.

A plurality of memories 34 store instruction sequences (corresponding toan example of the instruction sequence for execution) to be executed bythe individual sequencers. In the present embodiment, six sequencers (amaster sequencer 36, four transmission sequencers 38, and a receptionsequencer 40) are provided, and, correspondingly, six memories 34 areprovided. More specifically, a first memory 34 stores an instructionsequence to be executed by the master sequencer 36. A second memory 34stores a sequence of instructions to be executed by a first transmissionsequencer 38, a third memory 34 stores an instruction sequence to beexecuted by a second transmission sequencer 38, a fourth memory 34stores an instruction sequence to be executed by a third transmissionsequencer 38, and a fifth memory 34 stores an instruction sequence to beexecuted by a fourth transmission sequencer 38. A sixth memory 34 storesan instruction sequence to be executed by the reception sequencer 40. Ineach memory 34, a FIFO area or the like for storing the instructionsequence is provided. In this manner, a plurality of memories 34 thatstore the instruction sequences in units of sequencers are provided.Alternatively, such a FIFO area may be provided inside each sequencer.The instruction sequence includes various instructions, and includes asetting parameter to be given to each individual circuit.

The master sequencer 36 controls operation timings of the plurality oftransmission sequencers 38 and the reception sequencer 40. Specifically,the master sequencer 36 sequentially executes from the beginning theinstruction sequence stored in the memory 34 for the master sequencer36. By synchronous control of the master sequencer 36, the plurality oftransmission sequencers 38 and the reception sequencer 40 aresynchronously operated.

The plurality of transmission sequencers 38 control the operations of aplurality of transmission signal generators (transmitters) or the likeof a transmission signal generator 42. More specifically, eachindividual transmission sequencer 38 sequentially executes theinstruction sequence stored in the memory 34 for the individualtransmission sequencer 38, starting from the beginning. In the presentembodiment, as an example configuration, four transmission signalgenerators (four signal generators) are provided, and, correspondingly,four transmission sequencers 38 are provided. The plurality oftransmission signals generated by the four signal generators arecombined or synthesized and output from the transmission signalgenerator 42. In the present embodiment, the first transmissionsequencer 38 controls a first signal generator, the second transmissionsequencer 38 controls a second signal generator, the third transmissionsequencer 38 controls a third signal generator, and the fourthtransmission sequencer 38 controls a fourth signal generator. However,the one-to-one correspondence relationship is not a requirement, andalternatively, one transmission sequencer 38 may control a plurality ofsignal generators or a plurality of transmission sequencers 38 maycontrol one signal generator. The control of the operations of a circuitthat combines the plurality of the transmission signals and operationsof circuits provided downstream thereof is executed by a part or all ofthe four transmission sequencers 38. The numerical values explicitlydescribed in the present disclosure are given only as exemplary values.

The reception sequencer 40 basically has the same structure as theindividual transmission sequencer 38, and sequentially executes theinstruction sequence stored in the memory 34 for the reception sequencer40 from the beginning. With such a configuration, the operation of eachcircuit of a reception signal processor 48 (receiver) is controlled.

The transmission signal generator 42 includes a plurality of signalgenerators serving as the plurality of transmission signal generators,an adder serving as the combiner, a D/A converter (DAC), a signalprocessor circuit, a frequency converter circuit, or the like. Thetransmission signal generator 42 generates an RF transmission signal 43for NMR measurement. The RF transmission signal 43 is an analog signal,and is transmitted to a power amplifier 44 that executes linearamplification. The RF transmission signal amplified by the poweramplifier 44 is transmitted to a probe 56 via a T/R switch (transmissionand reception switch) 52.

The probe 56 includes an insertion section 56A having a transmission andreception coil (not shown), and a housing section 56B corresponding to aroot portion of the insertion section 56A. In the example configurationshown in the drawings, the probe has one port, and thus one RFtransmission signal is input to the probe. Alternatively, a probe havingtwo or more ports may be used. The insertion section 56A has acylindrical shape, and is inserted into a bore (cylindrical cavity) of astatic magnetic field generator 58. When the RF transmission signal issupplied to the transmission and reception coil, an electromagnetic wavegenerated in the coil is irradiated onto the sample, and a resonanceabsorption phenomenon occurs at the observation nucleus of the sample.Then, the NMR signal induced in the transmission and reception coil (RFreception signal) is transmitted from the probe 56 to the receptionsignal processor 48 via the T/R switch 52.

In the present embodiment, the T/R switch 52 has a routing function totransmit the RF transmission signal to the probe during the transmissionand to transmit the RF reception signal from the probe to the receptionsignal processor 48 during reception. A reception signal 54 from the T/Rswitch 52 is amplified by a pre-amplifier 45, and an amplified receptionsignal 46 is transmitted to the reception signal processor 48.Alternatively, the pre-amplifier 45 may be built in the T/R switch 52.

The reception signal processor 48 in the transmission and reception unit22 is a circuit which executes processes such as a frequency conversion,an A/D (analog-to-digital) conversion, a quadrature detection, or thelike on the input RF reception signal. The processed reception signal(complex signal) is temporarily stored in reception memory 50 asreception data. The reception data which is read from the receptionmemory 50 is transmitted to the spectrometer control computer 12, andthe analysis of the reception data is executed therein. Alternatively,the reception data may be analyzed in the transmission and receptionunit 22.

A structure of the memory 26 will now be described with reference toFIG. 2. In the memory 26, a FIFO area 28 and a procedure storage area 30are provided. In the FIFO area 28, a plurality of FIFO areas (FIFO areas280˜285) for storing the instruction sequence in units of sequencers areprovided. Specifically, in the FIFO area 280, the instruction sequencefor the master sequencer 36 is stored. In the FIFO area 281, theinstruction sequence for the first transmission sequencer 38 is stored;in the FIFO area 282, the instruction sequence for the secondtransmission sequencer 38 is stored; in the FIFO area 283, theinstruction sequence for the third transmission sequencer 38 is stored;and in the FIFO area 284, the instruction sequence for the fourthtransmission sequencer 38 is stored. In the FIFO area 285, theinstruction sequence for the reception sequencer 40 is stored. Theprocedure storage area 30 functions as a shared memory, and is sharedamong the master sequencer 36, the plurality of transmission sequencers38, and the reception sequencer 40. As will be described later, aninstruction sequence for executing a specific pulse sequence (procedureinstruction sequence) is stored in the procedure storage area 30. In theFIFO areas 280˜285, of the instruction sequences, instruction sequencesother than the procedure instruction sequence (streaming instructionsequences) are stored. The FIFO areas 280˜285 are formed, for example,by a ring buffer.

The pulse program will now be described with reference to FIG. 3. Apulse program 70 describes a pulse sequence. The pulse program 70describes, for example, various execution information such as settingparameters for the plurality of high-frequency pulses (such asfrequency, phase, and intensity), an output timing of the high-frequencypulse, a detection timing of the reception signal, setting parameters ofthe circuits, or the like. The pulse program 70 includes a sequence ofportions 72 for repeatedly executing a predetermined pulse sequence (aportion described in FIG. 3 as “Loop”), sequences of portions 74 and 76for executing irradiation of a specific high-frequency pulse (a portiondescribed in FIG. 3 as “Shaped pulse”), or the like. The portions 72,74, and 76 are collections of a plurality of pulse sequencedescriptions. When the pulse program 70 is compiled by the instructionsequence generator 14, the instruction sequence (procedure instructionsequence and streaming instruction sequence) is generated.

FIGS. 4A, 4B, and 4C show an example of a pulse sequence. FIGS. 4A, 4B,and 4C show a part of the pulse sequence. FIG. 4A shows a pulse sequencefor a reception channel (RCV). A triangle 80 shows a detection timing ofthe reception signal. This pulse sequence is executed by the receptionsequencer 40. FIGS. 4B and 4C show pulse sequences for a transmissionchannel. These pulse sequences are executed by the transmissionsequencers 38. A pulse sequence shown in FIG. 4B (OBS) is for obtainingthe NMR signal, and shows a pulse 82 to be output. The pulse 82corresponds to the “Shaped pulse” described above, and has amountain-like shape. A pulse sequence 84 shown in FIG. 4C (IRR) is apulse sequence for decoupling; that is, a pulse sequence for separatingcoupling of unnecessary interactions. Although not shown in FIGS. 4A,4B, and 4C, the pulse sequence may also include instructions foroutputting a 90-degree pulse, a 180-degree pulse, or the like.

A generation process of the instruction sequence will now be describedwith reference to FIG. 5. The instruction sequence generator 14identifies a portion for precedential transfer in the pulse program 70,and generates an instruction sequence for the identified portion as aprocedure instruction sequence. As an example, the portion 72 forexecuting a loop process and the portions 74 and 76 for irradiating ashaped pulse are the target of the precedential transfer. Theinstruction sequence generator 14 compiles the portion 72 to generate aprocedure instruction sequence P₁ from the portion 72. Similarly, theinstruction sequence generator 14 compiles the portions 74 and 76, togenerate procedure instruction sequences P₂ and P₃ from the portions 74and 76, respectively. The instruction sequence generator 14 generates aprocedure instruction sequence for the master sequencer 36, a procedureinstruction sequence for each individual transmission sequencer 38, anda procedure instruction sequence for the reception sequencer 40. Forexample, the instruction sequence generator 14 generates the procedureinstruction sequence for each sequencer according to the function ofeach sequencer. The instruction sequence generator 14 generates, forexample, the procedure instruction sequence for the master sequencer 36from the portion for controlling the operation timings or the like ofthe plurality of transmission sequencers 38 and the reception sequencer40. The instruction sequence generator 14 generates the procedureinstruction sequence for each individual transmission sequencer 38 fromthe portion for controlling the operation of the transmission signalgenerator 42. The instruction sequence generator 14 generates theprocedure instruction sequence for the reception sequencer 40 from theportion for controlling the operation of the reception signal processor48. In some cases, a sequencer may exist which does not execute aninstruction sequence shown by the procedure instruction sequence. Insuch cases, the procedure instruction sequence for that sequencer is notgenerated.

When there exist a plurality of portions corresponding to a sameprocedure instruction sequence in the pulse program 70, the instructionsequence generator 14 generates one procedure instruction sequence,among the plurality of procedure instruction sequences. The generatedprocedure instruction sequence is set as a representative (common)procedure instruction sequence. For example, when the portions 74 and 76are identical to each other; that is, when the procedure instructionsequences P₂ and P₃ are identical to each other, the instructionsequence generator 14 generates, among the procedure instructionsequences P₂ and P₃, one procedure instruction sequence (for example,the procedure instruction sequence P₂ which appears first).Alternatively, the instruction sequence generator 14 may generate aplurality of the same procedure instruction sequences.

The instruction sequence generator 14 manages an address of the memory26 of the transmission and reception unit 22, and designates a headaddress of the storage location of the procedure instruction sequence(address in the procedure storage area 30). The reference information isnot limited to the address information indicating the head address, andmay be any information that can specify the address of the storagelocation of the procedure instruction sequence. When a plurality of thesame procedure instruction sequences exist and a representativeprocedure instruction sequence among these instruction sequences isstored in the procedure storage area 30, the same address information isembedded in each portion for the precedential transfer.

For the pulse program 70, the instruction sequence generator 14sequentially generates a streaming instruction sequence S in transferunits from the beginning. With this process, streaming instructionsequences S corresponding to portions 78A, 78B, 78C, . . . aregenerated. In this process, the instruction sequence generator 14generates a streaming instruction sequence in which, in place of theportion to be transferred in precedential manner, address informationindicating the head address of the storage location of the procedureinstruction sequence (corresponding to an example of referenceinformation) is embedded. The storage location of the procedureinstruction sequence can be identified by referring to the addressinformation in the streaming instruction sequence. The instructionsequence generator 14 generates, according to the functions of thesequencers, a streaming instruction sequence for the master sequencer36, a streaming instruction sequence for each individual transmissionsequencer 38, and a streaming instruction sequence for the receptionsequencer 40.

The procedure instruction sequence and the streaming instructionsequence are sent to the transmission and reception unit 22, and storedin the memory 26. The procedure instruction sequence is stored in theprocedure storage area 30 on the memory 26 shown in FIG. 2, and thestreaming instruction sequence is stored in the FIFO area 28.

A transfer condition of the instruction sequence will now be describedfrom the viewpoint of an amount of instruction and a density. In thepresent embodiment, a sequence of a high density portion in theinstruction sequence is made into a procedure and is set as a target ofprecedential transfer. For example, an instruction sequence for quicklychanging many parameters in a short period of time corresponds to thehigh density portion. In the example configuration shown in FIG. 3, theinstruction sequence portion 72 for executing the loop process, and theportions 74 and 76 for outputting and irradiating the shaped pulsecorrespond to the high density portions. For example, the portions 74and 76 include a plurality of instructions for quickly changing manyparameters in a short period of time, in order to form the shaped pulse.An instruction sequence included in such a high density portion has aquick consumption rate at the sequencer compared to the instructionsequence of other portions. Therefore, if the instruction sequences atthe high density portions are generated as streaming instructionsequences and the generation and transfer thereof are executed in aparallel manner (when the ST transfer is executed), there is apossibility that the instruction sequence to be referred to by thesequencer is exhausted. In other words, the consumption rate of theinstruction sequence at the sequencer becomes higher than the rate ofgeneration and transfer of the streaming instruction sequences,resulting in an inability for the generation and transfer of thestreaming instruction sequence to catch up to the consumption of theinstructions, and, consequently, possible exhaustion of the instructionsequence at the sequencer. In order to handle such a case, in thepresent embodiment, the instruction sequence at the high density portionis made into a procedure and not transferred in ST transfer, and istransferred prior to the other instruction sequences.

On the other hand, if the measurement is to be started after all of theinstruction sequences are transferred, the time required for generatingand transferring all of the instruction sequences would be increased,causing a problem of delaying the start of the measurement. In addition,it is necessary to provide, in the transmission and reception unit 22which is the transfer destination, a large-capacity memory that canstore all instruction sequences. In consideration of this, in thepresent embodiment, the instruction sequence in the low density portionis not made into a procedure, and is transferred by ST transfer. Inother words, the streaming instruction sequence is sequentiallygenerated from the low density portion, and the generated streaminginstruction sequence is sequentially transferred. With such aconfiguration, the measurement can be started without waiting for thegeneration and transfer of all of the instruction sequences. Moreover,it becomes unnecessary to provide the large-capacity memory in thetransmission and reception unit 22. In this manner, in the presentembodiment, the precedential transfer and the ST transfer of theinstruction sequence are employed in a combined manner.

FIG. 6 shows a table summarizing these configurations. The high densityportion of the instruction sequence is made into a procedure andtransferred by precedential transfer, and the streaming instructionsequence is generated for the low density portion and the ST transfer isexecuted. For the low density portion, the ST transfer is executedregardless of whether the amount of instructions in the low densityportion is small or large. On the other hand, if a portion having a highdensity and having a large amount of instructions is set as a target ofprecedential transfer, the time required for the generation and transferof the procedure instruction sequence would be increased, and,consequently, the start of the measurement would be correspondinglydelayed. Therefore, in the present embodiment, the portion having a highdensity and a small amount of instructions is set as the target ofprecedential transfer. Because of the characteristic of the NMRmeasurement, a case where the high density instruction portion continuesfor a long period cannot be conceived, and, in reality, there is a lowpossibility that a portion of high density and a large amount ofinstructions occurs.

FIG. 7 shows an example instruction sequence for each sequencer.Reference numeral 80 indicates an instruction sequence for the mastersequencer 36. Reference numerals 82˜88 indicate instruction sequencesfor individual transmission sequencers 38. For example, referencenumeral 82 indicates an instruction sequence for the first transmissionsequencer 38, reference numeral 84 indicates an instruction sequence forthe second transmission sequencer 38, reference numeral 86 indicates aninstruction sequence for the third transmission sequencer 38, andreference numeral 88 indicates an instruction sequence for the fourthtransmission sequencer 38. Reference numeral 90 indicates an instructionsequence for the reception sequencer 40. Reference sign P indicates aprocedure instruction sequence, and reference sign S indicates astreaming instruction sequence. A vertical axis indicates time t, andthe process proceeds in the direction of the arrow (downward). In eachsequencer, the instruction sequences are executed according to the orderof the instruction sequence.

As a specific example for explanation, the instruction sequence for themaster sequencer 36 (instruction sequence 80) includes streaminginstruction sequences S_(M1)˜S_(M5), . . . and procedure instructionsequences P₁, P₂, . . . . The master sequencer 36 executes theinstructions in the order of instruction sequences S_(M1), P₁, S_(M2),S_(M3), S_(M4), S_(M5), P₂, . . . . As an example, the streaminginstruction sequence S_(M1) includes address information indicating thehead address of the storage location of the procedure instructionsequence P₁ (the address information is embedded). By referring to theaddress information, it is possible to identify the storage location ofthe procedure instruction sequence P₁ to be executed next after thestreaming instruction sequence S_(M1). Similarly, the streaminginstruction sequence S_(M5) includes address information indicating thehead address of the storage location of the procedure instructionsequence P₂.

This is similarly applicable to other sequencers. The instructionsequence for the first transmission sequencer 38 (instruction sequence82) includes streaming instruction sequences S_(A1)˜S_(A5), . . . andprocedure instruction sequences P₁, P₃, . . . . The instruction sequencefor the second transmission sequencer 38 (instruction sequence 84)includes streaming instruction sequences S_(B1)

S_(B5), . . . and procedure instruction sequences P₂, P₄, . . . . Theinstruction sequence for the third transmission sequencer 38(instruction sequence 86) includes streaming instruction sequencesS_(C1)˜S_(C5), . . . and procedure instruction sequences P₁, . . . . Theinstruction sequence for the fourth transmission sequencer 38(instruction sequence 88) does not include any instruction sequence, andthe sequencer is not used. The instruction sequence for the receptionsequencer 40 (instruction sequence 90) includes streaming instructionsequences S_(R1)˜S_(R5), . . . . In the example configuration shown inFIG. 7, the instruction sequence for the reception sequencer 40 does notinclude a procedure instruction sequence, but alternatively, theinstruction sequence for the reception sequencer 40 may include aprocedure instruction sequence. In addition, although the instructionsequence for the fourth transmission sequencer 38 does not include anystreaming instruction sequence or any procedure instruction sequence,alternatively, the instruction sequence may include a procedureinstruction sequence and a streaming instruction sequence for referringto the procedure instruction sequence.

There may be cases where the same procedure instruction sequence isexecuted by each of a plurality of sequencers. For example, theprocedure instruction sequence P₂ is included in the instructionsequence for the master sequencer 36 (reference numeral 80) and theinstruction sequence for the second transmission sequencer 38 (referencenumeral 84). Therefore, the procedure instruction sequence P₂ isexecuted by the master sequencer 36 and also by the second transmissionsequencer 38. In this case also, as described above, one procedureinstruction sequence P₂ is stored in the procedure storage area 30 ofthe memory 26, and the procedure instruction sequence P₂ is shared bythe master sequencer 36 and the second transmission sequencer 38. Thisis also similarly applicable for the other procedure instructionsequences. Specifically, when the same procedure instruction sequence isexecuted by each of the plurality of sequencers, one of the plurality ofthe same procedure instruction sequences is stored in the procedurestorage area 30 of the memory 26.

The correspondence relationship between the procedure instructionsequence and the streaming instruction sequence shown in FIG. 7 is shownin an aligned manner for convenience of explanation of the order ofinstructions to be executed. Thus, FIG. 7 does not show the specificstorage form of the instruction sequences in the memory 26. For example,while FIG. 7 shows a plurality of the same procedure instructionsequences, the showing is merely for explaining the instruction sequenceexecuted by the sequencers, and, in the present embodiment, one of theseplurality of procedure instruction sequences is stored in the memory 26.

Next, an outline of a transfer process and a re-construction process ofthe instruction sequence will be described with reference to FIG. 8.FIG. 8 shows a structure related to the transfer process and there-construction process, and structures not related to these processesare omitted.

First, the pulse program is generated by the host computer 10. The pulseprogram is sent to the spectrometer control computer 12. The instructionsequence generator 14 refers to the entirety of the pulse program,extracts a portion to be transferred by the precedential transfer, andgenerates the procedure instruction sequence from the extracted portion.The instruction sequence generator 14 also sequentially generates thestreaming instruction sequence in transfer units from the beginning ofthe pulse program. In this process, the instruction sequence generator14 generates the streaming instruction sequence in which, in place ofthe portion of precedential transfer, address information of the storagelocation of the procedure instruction sequence is embedded.Alternatively, the instruction sequence generator 14 may compile thepulse program to temporarily generate the instruction sequence, andidentify the procedure instruction sequence for the precedentialtransfer from among the instruction sequences. In this case also, ingeneration of the streaming instruction sequence, the streaminginstruction sequence is generated in which, in place of the portion ofthe precedential transfer, the address information of the storagelocation of the procedure instruction sequence is stored.

The transfer controller 16 transfers the procedure instruction sequence(“instruction sequence (Proc)” in FIG. 8) prior to the transfer of thestreaming instruction sequence (“instruction sequence (Stream)” in FIG.8) to the transmission and reception unit 22. After the transfer of theprocedure instruction sequence is completed, the transfer controller 16sequentially transfers the streaming instruction sequence which issequentially generated, to the transmission and reception unit 22. Whena plurality of procedure instruction sequences are generated, thetransfer of the streaming instruction sequence is started after all ofthe plurality of procedure instruction sequences are transferred.

The memory controller 24 stores the procedure instruction sequence(instruction sequence (Proc)) in the procedure storage area 30 (sharedarea) on the memory 26. In addition, the memory controller 24 stores thestreaming instruction sequence (instruction sequence (Stream)) in theFIFO area 28 on the memory 26.

The re-construction unit 32 generates a final instruction sequence fromthe instruction sequence stored in the memory 26. Specifically, there-construction unit 32 reads the streaming instruction sequence on eachFIFO area included in the FIFO area 28 (FIFO areas 280˜285 in FIG. 2)from the beginning, and writes the read instruction sequence to acorresponding memory 34 (FIFO memory). For example, the re-constructionunit 32 reads the streaming instruction sequence on the FIFO area 280from the beginning, and writes the read instruction sequence in thememory 34 for the master sequencer 36. When address information isincluded (embedded) in the read streaming instruction sequence, there-construction unit 32 reads a procedure instruction sequence stored inthe address indicated by the address information from the procedurestorage area 30. The re-construction unit 32 interprets and decompressesthe procedure instruction sequence, and writes the resulting instructionsequence in the memory 34 for the master sequencer 36. A similar processis executed for the other sequencers. In this manner, the finalinstruction sequence to be executed by each sequencer is written to eachmemory 34. When an instruction to start measurement is given, eachsequencer sequentially executes the instruction sequence stored in thememory 34 for the sequencer from the beginning.

After the measurement is started, the generation of the streaminginstruction sequence by the instruction sequence generator 14, thetransfer of the streaming instruction sequence by the transfercontroller 16 to the transmission and reception unit 22, there-construction of the instruction sequence by the re-construction unit32, and the executions of the instruction sequences by the sequencersare executed in parallel to each other. In other words, the sequencersexecute the instruction sequences while the streaming instructionsequence is generated, transferred, and re-constructed.

Next, details of the generation process and the transfer process of theinstruction sequence will be described with reference to FIG. 9. In FIG.9, the horizontal axis represents time t. At time t₁, the pulse programis sent to the spectrometer control computer 12. In a period until timet₂, the instruction sequence generator 14 refers to the entirety of thepulse program, and identifies a portion to be transferred byprecedential transfer. In the period between time t₂ and time t₃, theinstruction sequence generator 14 generates procedure instructionsequences P₁˜P_(N) from the pulse program. When a plurality of the sameprocedure instruction sequence exist, one of the procedure instructionsequences is generated.

The transfer controller 16 transfers the procedure instruction sequencesP₁˜P_(N) to the transmission and reception unit 22 (precedentialtransfer). The transfer controller 16 may sequentially transfer thegenerated procedure instruction sequence to the transmission and thereception unit 22 every time the procedure instruction sequence isgenerated. As an alternative configuration, the transfer controller 16may transfer the procedure instruction sequences P₁˜P_(N) to thetransmission and reception unit 22 after all of the procedureinstruction sequences P₁˜P_(N) are generated. In the exampleconfiguration shown in FIG. 9, the procedure instruction sequences aresequentially transferred to the transmission and reception unit 22 everytime the procedure instruction sequence is generated. The transferredprocedure instruction sequences P₁˜P_(N) are stored in the procedurestorage area 30 on the memory 26.

Meanwhile, when the generation of the procedure instruction sequencesP₁˜P_(N) is completed, the instruction sequence generator 14sequentially generates streaming instruction sequences from thebeginning of the pulse program in units of transfers. In this process,the instruction sequence generator 14 generates the streaminginstruction sequence in which address information of a storage locationof the procedures instruction sequence is embedded in place of apportionof precedential transfer in the pulse program. As an example, theinstruction sequence generator 14 generates the streaming instructionsequences for the sequencers in number of transfer units (for example,one) in order. Specifically, the instruction sequence generator 14sequentially generates the streaming instruction sequence S_(M1) for themaster sequencer 36, the streaming instruction sequence S_(A1) for thefirst transmission sequencer 38, the streaming instruction sequenceS_(B1) for the second transmission sequencer 38, the streaminginstruction sequence S_(C1) for the third transmission sequencer 38, thestreaming instruction sequence S_(D1) for the fourth transmissionsequencer 38, the streaming instruction sequence S_(R1) for thereception sequencer 40, the streaming instruction sequence S_(M2) forthe master sequencer 36, the streaming instruction sequence S_(A2) forthe first transmission sequencer 38, . . . . In the subsequent periodsalso, the instruction sequence generator 14 continues to generate thestreaming instruction sequences for the sequencers in the number oftransfer units in order. The transfer controller 16 transfers thestreaming instruction sequence to the transmission and reception unit 22every time the streaming instruction sequence is generated. In otherwords, the generation and the transfer of the streaming instructionsequence are executed in parallel to each other. In this manner, thestreaming transfer (ST transfer) is realized. For example, when thestreaming instruction sequences S_(M1), S_(A1), S_(B1), S_(C1), S_(D1),S_(R1), S_(M2), S_(A2), . . . are generated in that order, the transfercontroller 16 transfers the streaming instruction sequences to thetransmission and reception unit 22 in the order of generation, everytime one of the streaming instruction sequences is generated.

The order of generation of the streaming instruction sequence is notlimited to the above-described example configuration. For example, aconfiguration may be employed in which, after a certain amount of thestreaming instruction sequences for the master sequencer 36 and for thetransmission sequencers 38 is generated and transferred, the streaminginstruction sequence for the reception sequencer 40 is generated andtransferred. The configuration is not limited to such a configuration,and the order of generation and transfer of the streaming instructionsequence may be suitably changed. In addition, in the above-describedexample configuration, the streaming instruction sequences for thesequencers are sequentially generated for each sequencer, butalternatively, the streaming instruction sequences for the sequencersmay be generated in parallel to each other or simultaneously.

The streaming instruction sequence transferred to the transmission andreception unit 22 is stored in the FIFO area 28 on the memory 26. Eachstreaming instruction sequence is stored in the FIFO area 28 in theorder of transfer. In the present embodiment, the streaming instructionsequences are stored in the FIFO areas prepared for the sequencers.Specifically, the streaming instruction sequence S_(M1) for the mastersequencer 36 is stored in the FIFO area 280 for the master sequencer 36.The streaming instruction sequence S_(A1) for the first transmissionsequencer 38 is stored in the FIFO area 281 for the first transmissionsequencer 38. The streaming instruction sequence S_(B1) for the secondtransmission sequencer 38 is stored in the FIFO area 282 for the secondtransmission sequencer 38. The streaming instruction sequence S_(C1) forthe third transmission sequencer 38 is stored in the FIFO area 283 forthe third transmission sequencer 38. The streaming instruction sequenceS_(D1) for the fourth transmission sequencer 38 is stored in the FIFOarea 284 for the fourth transmission sequencer 38. The streaminginstruction sequence S_(R1) for the reception sequencer 40 is stored inthe FIFO area 285 for the reception sequencer 40. The streaminginstruction sequence S_(M2) for the master sequencer 36 is stored in theFIFO area 280 for the master sequencer 36. The streaming instructionsequence S_(A2) for the first transmission sequencer 38 is stored in theFIFO area 281 for the first transmission sequencer 38. The streaminginstruction sequences S_(M1), S_(A1), S_(B1), S_(C1), S_(D1), S_(R1),S_(M2), S_(A2), . . . are stored in the FIFO areas in this order. Thesubsequent instruction sequences are handled in a similar manner.Namely, the transferred streaming instruction sequences are sequentiallystored in the corresponding FIFO areas. Alternatively, of the transfersdescribed above, a part or all of the transfers for the sequencers maybe executed in parallel to each other.

The ST transfer will now be summarized. For example, the streaminginstruction sequences S_(M1), S_(A1), S_(B1), S_(C1), S_(D1), S_(R1),S_(M2), S_(A2), . . . are generated in this order. Every time thestreaming instruction sequence is generated, the generated streaminginstruction sequence is transferred to the transmission and receptionunit 22. Therefore, the streaming instruction sequences S_(M1), S_(A1),S_(B1), S_(C1), S_(D1), S_(R1), S_(M2), S_(A2), . . . are transferred tothe transmission and reception unit 22 in that order. The streaminginstruction sequences S_(M1), S_(A1), S_(B1), S_(C1), S_(D1), S_(R1),S_(M2), S_(A2), . . . are then stored in that order in the FIFO areasprepared for the sequencers on the memory 26.

FIG. 10 shows the memory 26 in a state where the instruction sequencesare stored. The procedure storage area 30 stores procedure instructionsequences P₁, P₂, . . . , P_(N). On the other hand, the FIFO area 280for the master sequencer 36 stores the streaming instruction sequencesS_(M1), S_(M2), and S_(M3) for the master sequencer 36. The FIFO area281 for the first transmission sequencer 38 stores the streaminginstruction sequences S_(A1), S_(A2), and S_(A3) for the firsttransmission sequencer 38. The FIFO area 282 for the second sequencer 38stores the streaming instruction sequences S_(B1), S_(B2), and S_(B3)for the second transmission sequencer 38. The FIFO area 283 for thethird transmission sequencer 38 stores the streaming instructionsequences S_(C1) and S_(C2) for the third transmission sequencer 38. TheFIFO area 284 for the fourth transmission sequencer 38 stores thestreaming instruction sequences S_(D1) and S_(D2) for the fourthtransmission sequencer 38. The FIFO area 285 for the reception sequencer40 stores the streaming instruction sequences S_(R1) and S_(R2) for thereception sequencer 40. Every time the streaming instruction sequencefor each sequencer is generated and transferred, the transferredstreaming instruction sequences are sequentially stored in the FIFOareas.

Next, details of the re-construction process of the instruction sequencewill be described with reference to FIG. 11. When the streaminginstruction sequence is stored in the memory 26, the re-constructionunit 32 reads the streaming instruction sequences on the FIFO areas280˜285 from the beginning, and writes the read instruction sequence onthe memory 34 for each sequencer (FIFO memory). Here, there-construction process of the instruction sequence for the mastersequencer 36 will be exemplified for description. The re-constructionunit 32 reads the streaming instruction sequences on the FIFO area 280from the beginning. In the example configuration shown in FIG. 11, there-construction unit 32 reads the streaming instruction sequence S_(M1)from the FIFO area 280, and writes the streaming instruction sequenceS_(M1) in the memory 34 for the master sequencer 36. When the addressinformation indicating the storage location of the procedure instructionsequence is embedded in the streaming instruction sequence S_(M1), there-construction unit 32 refers to the procedure storage area 30 on thememory 26, and reads the procedure instruction sequence from the addressindicated by the address information. Here, a case is considered inwhich the address information indicating the storage location of theprocedure instruction sequence P₁ is embedded in the streaminginstruction sequence S_(M1). In this case, the re-construction unit 32reads the procedure instruction sequence P₁ from the procedure storagearea 30, interprets and decompresses the procedure instruction sequenceP₁, and writes the instruction sequence on the memory 34. Subsequently,the re-construction unit 32 reads the next streaming instructionsequence S_(M2) from the FIFO area 280, and writes the streaminginstruction sequence S_(M2) to the memory 34. When address informationis embedded in the streaming instruction sequence S_(M2), there-construction unit 32 reads the procedure instruction sequence basedon the address information. In the example configuration shown on FIG.11, a configuration is considered in which no address information isembedded in the streaming instruction sequence S_(M2). Subsequently, there-construction unit 32 reads the next streaming instruction sequenceS_(M3) from the FIFO area 280, and writes the streaming instructionsequence S_(M3) to the memory 34. The subsequent process is similar, andthe re-construction unit 32 repeats the above-described process untilthe last streaming instruction sequence. With this process, the finalinstruction sequence is written to the memory 34. The processes for thetransmission sequencer 38 and the reception sequencer 40 are similar,and the instruction sequences for the sequencers are written to thememories 34 for the sequencers. As described above, when a plurality ofportions corresponding to the same procedure instruction sequence existin the pulse program, one of the plurality of the procedure instructionsequences is stored in the procedure storage area 30. In this case, theprocedure instruction sequence is used a plurality of times, to generatethe instruction sequence for the portions that are made into procedures.

The unit of the instruction sequences written from the FIFO area 28 tothe memory 34; that is, the unit of the instruction sequences to bere-constructed, may be the same as the unit of the streaming instructionsequences, or may be different. In the example configuration shown inFIG. 11, the unit of the instruction sequence to be re-constructed isthe same as the unit of the streaming instruction sequence. Theconfiguration is not limited to such a configuration, and there-construction unit 32 may alternatively sequentially read theinstruction sequence with a reading unit from the beginning of each ofthe FIFO areas 280˜285, and write the read instruction sequence to thecorresponding memory 34. The reading unit may be a unit which isdetermined in advance, or may be changed to an arbitrary unit.

When start of the measurement is instructed, the sequencers read theinstructions from their own memories 34, and execute the readinstructions. For example, the measurement may be started at a timingwhen one instruction sequence (for example, one streaming instructionsequence) is written to the memories 34 of all sequencers.Alternatively, the measurement may be started at a timing when aplurality of instruction sequences are written to the memories 34 of allsequencers. As already described with reference to FIG. 7, eachsequencer sequentially reads the instructions from its own memory 34,and executes the read instructions.

In the present embodiment, while the re-constriction process isexecuted, each sequencer reads the instruction sequence from the memory34 and executes the read instruction sequence from the point of timewhen the instruction for start of measurement is received. In addition,the generation and the transfer of the streaming instruction sequenceare executed in parallel with the execution of the instruction sequence.Therefore, while the instruction sequences are executed by thesequencers, the streaming instruction sequences are sequentiallygenerated by the instruction sequence generator 14, and are sequentiallytransferred by the transfer controller 16 to the FIFO area 28.

The amount of data of the streaming instruction sequence and the timingof start of measurement are determined such that the instructionsequence is not exhausted from the memory 34.

As described, in the present embodiment, a high density portion in theinstruction sequence is made into a procedure, and is transferred in aprecedential manner, and the other portions are transferred by STtransfer. By executing the ST transfer, it becomes possible to start themeasurement earlier compared to a case where the instruction sequencesare transferred to the transmission and reception unit 22 after all ofthe instruction sequences is generated. In addition, it becomesunnecessary to provide a large-capacity memory for storing allinstruction sequences in the transmission and reception unit 22. On theother hand, if all of the instruction sequences are to be transferred byST transfer, in a high density portion, the generation and transfer ofthe streaming instruction sequences cannot catch up with the consumptionof the instruction sequences at the sequencer, resulting in a possible,problem that the instructions referred to by the sequencer areexhausted. In order to handle such a case, in the present embodiment,the high density portion is made into a procedure and transferred in aprecedential manner. With such a configuration, it becomes possible toavoid exhaustion of the instruction sequence. In summary, by combiningthe precedential transfer and the ST transfer, it becomes possible toquicken the start of the NMR measurement, and, at the same time, avoidthe exhaustion of the instruction sequences referred to by thesequencer. Moreover, it becomes unnecessary to provide a large-capacitymemory in the transmission and reception unit 22, and the capacity ofthe memory can be reduced.

Furthermore, when a plurality of portions corresponding to the sameprocedure instruction sequence exist in the pulse program, one procedureinstruction sequence of the plurality is transferred to the transmissionand reception unit 22. The one procedure instruction sequence is used aplurality of times, to generate the instruction sequence of each portionwhich is made into a procedure. With such a configuration, a totalamount of transfer of the instruction sequence is reduced, and the timerequired for completion of the precedential transfer can be reduced. Inaddition, because a total amount of transfer of the instruction sequenceis reduced, the capacity of the memory can be reduced.

In the present embodiment, a plurality of sequencers are provided, butalternatively, the number of sequencers may be one. In this case also,the procedure instruction sequence executed by one sequencer istransferred in a precedential manner from the spectrometer controlcomputer 12 to the transmission and reception unit 22, and, after theprecedential transfer is completed, the streaming instruction sequencesare sequentially transferred from the spectrometer control computer 12to the transmission and reception unit 22. With such a configuration,advantages similar to those described above can be obtained.

The invention claimed is:
 1. In a magnetic resonance measurementapparatus: a precedential processor unit (12) that identifies aprocedure instruction sequence of a magnetic resonance measurement in atransmission/reception signals processing unit (22), and that executes aprecedential process to transfer the identified procedure instructionsequence to a first storage unit (30) and to generate a streaminginstruction sequence in which reference information for identifying astorage location of the procedure instruction sequence is embedded; atransfer unit (16) that sequentially transfers the streaming instructionsequence, after execution of the precedential process, to a secondstorage unit (28) in units of transfer from a beginning of the streaminginstruction sequence; a re-construction unit (32) that re-constructs aninstruction sequence for execution referring to the streaminginstruction sequence, starting from the beginning, sequentiallytransferred to the second storage unit (28), the re-construction unitre-constructing the instruction sequence for execution by referring tothe procedure instruction sequence on the first storage unit (30) basedon the reference information embedded in the streaming instructionsequence; and a sequencer unit (36, 38, 40) that executes there-constructed instruction sequence, wherein the re-construction unit(32) re-constructs the instruction sequence independent of processing ofa nuclear magnetic resonance signal.
 2. In the magnetic resonancemeasurement apparatus according to claim 1, wherein the sequencer unitincludes a plurality of sequencers, the instruction sequence forexecution is generated for each individual sequencer, and the sameprocedure entity included in a plurality of instruction sequences forexecution for the plurality of sequencers is shared by the plurality ofsequencers.
 3. In the magnetic resonance measurement apparatus accordingto claim 1, wherein when the reference information includes portionscorresponding to a plurality of procedure entities having the samecontent, the precedential processor unit transfers one of the pluralityof procedure entities to the first storage unit.
 4. In the magneticresonance measurement apparatus according to claim 1, wherein theprecedential processor unit has a function to identify a portion thatsatisfies a make-procedure condition in the procedure instructionsequence.
 5. In the magnetic resonance measurement apparatus accordingto claim 4, wherein the portion that satisfies the make-procedurecondition is a portion for realizing a specific pulse sequence.
 6. Inthe magnetic resonance measurement apparatus according to claim 1,wherein the reference information is an address on the first storageunit or information that can identify the address.
 7. In the magneticresonance measurement apparatus according to claim 1, wherein the unitsof transfer are transferred as a streaming transfer, and the streamingtransfer is executed in a parallel after start of execution of theinstruction sequence by the sequencer unit.
 8. In the magnetic resonancemeasurement apparatus according to claim 1, wherein the units oftransfer are transferred as a streaming transfer, and generation of thestreaming instruction sequence, transfer of the streaming instructionsequence, re-construction of the instruction sequence for execution, andexecution of the instruction sequence for execution are executed inparallel to each other.